A mechanical apparatus, which performs a movement similar to a motion of a human using electric or magnetic action, is called “robot”. It is said that the term robot originates from a Slav word ROBOTA (slave machine). In our country, the robot began to be popularized in the end of the 1960s. However, most of the robots were industrial robots such as manipulators and transporting robots intended to achieve automation and unmanning of manufacturing works in factories.
Recently, research and development have proceeded regarding various types of traveling robots of the leg type beginning with “human-shaped” or humanoid robot designed by modeling body mechanisms and motions of an animal, which walks erectly with two legs like a human, and also expectations for achievement of practical use of them are increasing.
Principal applications of traveling robots having wheels or movable legs involve vicarious execution of various works in industrial activities or productive activities and co-existence or symbiosis with humans who act intelligently on the basis of a conversion with a user. The former signifies that a robot performs a critical work or a difficult work at a site into which a human cannot step readily such as a maintenance work in a nuclear power plant, a heat power plant, or a petrochemical plant, a transporting or assembling work of parts in a manufacturing factory, cleaning of a high-rise building, or rescue at a fire site or a like place. Meanwhile, in the latter case, the robot is utilized in a free space same as that of a human and effects autonomous thinking and motion control to implement higher and more realistic communication.
Incidentally, self-localization of a traveling robot is a technique very significant for allowing a robot to perform a service such as, for example, a delivery service. This is because it is inefficient that a traveling robot takes a wrong route to a destination even if it can restore a correct route. There is the possibility even that such a hazard as collision with an obstacle or advancement into a dangerous zone may be invited.
One of representative techniques for allowing a robot to perform self-localization is utilization of a “Landmark”. A landmark usually has visually identifiable visibility information formed on a surface thereof. A robot can geographically search the self-localization based on relative position information from the visually recognized landmark.
A system, which applies, for example, Markov localization or an extended Kalman filter, has been proposed as a searching or self-localization system in an environment including an artificial landmark.
A searching apparatus using the Markov localization stores the self-localization in an environment as a self-localization probability density distribution on discrete grids and estimates, if it observes a landmark set in the environment, the self-localization based on a relative position from the landmark to update the self-localization probability density distribution. Further, if the searching apparatus observes motion information of the searching apparatus itself, then it updates the self-localization probability density based on the motion information. Then, that one of the grids that has the highest value of the self-localization probability density distribution at each time is determined as an estimation result of the self-localization.
On the other hand, a searching apparatus using an extended Kalman filter stores the self-localization as actually measured values of state variables [x, y, θ]. Then, if the searching apparatus observes a landmark set in an environment, then it estimates the self-localization based on the relative position from the landmark. Further, if the searching apparatus observes motion information of the searching apparatus itself, then it estimates a state amount based on the motion information.
The former searching apparatus applying the Markov localization is characterized principally in that, although the accuracy of an identification solution is rough, the convergence speed of the solution is high. Therefore, the inventors of the present invention consider that a searching apparatus of the type described is suitable for a global search. Further, the Markov localization is robust against noise of a sensor. In other words, even if a sensor value includes noise, a substantially fixed self-localization result can be obtained with the Markov localization.
Meanwhile, the latter searching apparatus applying an extended Kalman filter is characterized principally in that, although the convergence speed of a solution is low, the accuracy of the identification solution is fine. Therefore, the inventors of the present invention consider that a searching apparatus of the type just described is suitable for a local search. Further, although the extended Kalman filter is robust against sensor information, it is poor in robustness against sensor noise and requires a long period of time for resetting.
A searching apparatus using the Markov localization exhibits considerable characters of a global searching apparatus and is low in the convergence speed of a solution. However, since the amount of calculation increases in proportion to the square of the number of grid divisions, the accuracy of the identification solution relies upon the roughness of the discrete grids and usually a solution having a high accuracy is not obtained. Further, where the accuracy of the solution is poor, the self-localization cannot be found accurately. This sometimes gives rise to such a trouble that the destination cannot be reached accurately or it cannot be discriminated whether or not the destination is reached actually.
On the other hand, a searching apparatus using an extended Kalman filter exhibits considerable characters of a local searching apparatus and is very high in the accuracy of an identification solution. However, the searching apparatus is low in the convergence performance and lacks in robustness (toughness) against noise of observation information. Where the convergence speed is low, much time is required for initial localization upon starting of self-localization, and, if the position is moved unintentionally by external force (an abduction or kidnapping problem), then very much time is required before a correct solution is obtained.